蒙特卡洛方法

Monte Carlo Method
用于解决数学、物理和工程问题中的优化问题、积分计算、系统仿真等,核心思想是通过随机抽样来近似复杂问题的解。

设计随机试验,使一个事件的概率与某一未知数有关,然后通过多次重复试验,以频率近似概率,求得未知数

% 参数设置
n_samples = 1e6; % 样本数量
inside = 0; % 落在圆内的点的数量

% 生成随机样本点
for i = 1:n_samples
    x = rand() * 2 - 1; % x坐标
    y = rand() * 2 - 1; % y坐标
    if (x^2 + y^2) <= 1
        inside = inside + 1; % 如果点在圆内,则计数
    end
end

% 计算圆周率π的近似值
pi_estimate = (inside / n_samples) * 4;
fprintf('圆周率π的近似值为:%f\n', pi_estimate);